package annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 该注解用于标注可以被反射自动调用的方法
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface AutoRunMethod {
    /*
     * 为注解添加参数.
     * 语法:
     * 类型 参数名() [default 默认值];
     * 如果注解只有一个参数时,通常参数名使用value,参数名可以不写
     * 如果注解声明参数,调用注解时,需要对参数进行赋值,格式为
     *  @注解名(参数名=参数值) 此处参数值需要注解参数的类型
     * 如果有多个参数,那么即便参数名含有value也不会是默认参数名,依旧需要书写参数名
     * 多个参数值进行赋值时,用逗号分隔
     */
    int value() default 1;
}
